package Day17.intereface_.Three;

/**
 * @author HYHwtx
 * @version 1.0
 * @date 2022/2/24 15:41
 */

/**
* 接口中的注意事项：
* 1.接口不能被实例化；
* 2.接口中的所有方法是public方法，接口中的抽象方法，可以不用abstract修饰
* 3.一个普通类的实现接口，就必须将该接口的所有方法都实现。
* 4.抽象类实现接口，可以不用实现接口的方法
* 5.一个接口可以同时实现多个接口
* 6.接口中的属性，只能是final的，而且是 public static final来修饰的
* 7.接口中属性的访问形式：接口名.属性名
* 8.接口不能继承其他的类，但是可以继承多个别的接口
* 9.接口的修饰符只能是public 和默认的，这一点跟类的修饰符是一样的
*
*/
public class InterfaceDetail01 {
    public static void main(String[] args) {
//        new IA();1.接口不能被实例化

    }
    interface  IA{
        void  hi();
        //2.接口中的所有方法是public方法，接口中的抽象方法，可以不用abstract修饰
        abstract void say();//修饰符 public protected 默认 private

    }
    //3.一个普通类的实现接口，就必须将该接口的所有方法都实现。
    class Cat implements IA{

        @Override
        public void hi() {
            System.out.println("hi()");
        }

        @Override
        public void say() {
            System.out.println("say()");
        }
    }

    //4.抽象类实现接口，可以不用实现接口的方法
    abstract class Tigar implements IA{

    }
}
